In order to manage large quantities of data, computer software applications, such as spreadsheet and database applications have been developed to organize and store the data in a logical manner. Typical spreadsheet and database applications comprise a number of objects of information, wherein each object comprises a number of fields having field values (i.e., data). In the context of database applications, a database management system provides software tools to manipulate a database. A typical database management system provides a filter tool for enabling a user to create a filter by defining filter criteria.
Conventionally, the user manually enters the filter criteria for filtering the field values in the database objects and creates the filter. For example, the user may manually parse through the database objects and identify one or more field values as the filter criteria. Upon applying the filter to the database objects, the field values that satisfy the filter criteria are identified and the corresponding objects are displayed exclusive of the other database objects. For example, a database of employees may have an object for each employee where each object contains fields designating specifics about the employee, such as employee name, employee ID, department, and so on. If the user chooses to filter out objects of the employees based on one or more departments specified in the department field, then the user manually selects at least one or more departments as filter criteria and creates a filter.
However, the manually entering the filter criteria to create the filter becomes a laborious and time consuming task when the database has a large number of objects and/or when the objects have a large number of fields.